Skip to main content

How to Deploy a Hotfix Version for a Particular Spinnaker service

Introduction

The Spinnaker environment is up and running, but there is a need to deploy and install a customized (hotfix) service rather than upgrading the entire Spinnaker platform.This article advises about how to deploy a hotfix to particular Spinnaker services.

Prerequisites

Please plan ahead for any additional affects a hotfix may cause.  Please also note that the hotfix may not be completely be tested with compatibility for all Spinnaker versions, unlike a versioned release, which has gone through testing.

Instructions

In order to install the hotfix, the service image will need to be swapped out with the hotfix in service-settings.

In Halyard

For example, when using Halyard and in this example, a Dinghy hotfix needs to be installed, an entry will need to be made in the following service setting path (if the file doesn't already exist, please create it):  .``````hal//service-settings/dinghy.yml artifactId:

The `````` input parameter contains the docker image path with its tag name. For example: artifactId: armory/dinghy:2.21.4 After that, run the hal deploy apply command to apply the changes.For other particular services, please add different .yml files in the same service settings directory (.hal//service-settings/) and follow the same approach.e.g. clouddriver.yml, kayenta.yml, etc. Once the affected pods boot up successfully, please verify it by using the kubectl describe pods  command to check if the container within this pod has the correct hotfix image version.

In Operator

In a similar scenario, when using Operator, please locate the `````` section in SpinnakerService.yml file, and add the artifactId YAML content of the corresponding service's service-setting, then apply the changes. As an example, if making the change to Dinghy to match version 2.21.4 of the service, in spec.spinnakerConfig.service-settings spec: spinnakerConfig: service-settings: clouddriver: deck: dinghy: artifactId: armory/dinghy:2.21.4 echo: fiat: front50: gate: igor: kayenta: orca: rosco: Once the affected pods boot up successfully, please verify it by using the kubectl describe pods  command to check if the container within this pod has the correct hotfix image version.